package arraylist;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

/**
 * @author tongchen
 * @create 2023-03-01 9:36
 */
public class MethodTest {
    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<>();
        list.add("javaee");
        list.add("javaweb");
        list.add("测试课程");
        //获取顺序表中元素的个数
        System.out.println(list.size());
        //获取和设置index下标下的数据
        System.out.println(list.get(1));
        list.set(2, "java");
        //在指定位置添加指定元素，其他元素依次后移
        list.add(0,"hello");
        //加入一个其他元素
        list.add("hahahh" );
        //按照内容进行删除元素
        list.remove("hahahh");
        //判断是否存在并添加
        if(list.contains("hih")){
            list.add(1, "hih");
        }
        //按照下标进行删除元素，注意下标的范围
        list.remove(1);
        //取出元素的下标
        System.out.println("javaee的下标为"+list.indexOf("javaee"));
        //打印总体顺序表中的元素
        System.out.println("顺序表中的元素为"+list);
        //获取子顺序表
        List<String> subList = list.subList(0, list.size() - 2);
        System.out.println("子顺序表中的元素为"+subList);
        //测试不同的遍历方式
        //for循环
        for (int i = 0; i <list.size() ; i++) {
            System.out.print(list.get(i)+" ");
        }
        //foreach
        for (String s:list) {
            System.out.print(s+" ");
        }
        //迭代器
        Iterator<String> iterator = list.listIterator();
        while(iterator.hasNext()){
            System.out.print(iterator.next()+" ");
        }


    }
}
